The present disclosure relates to a polar code decoding apparatus and method.
In a memory system, encoding and decoding are performed using low-density parity check (LDPC) codes or turbo codes. Recently, polar codes have attracted attention, and research has been vigorously conducted into efficient coding algorithms for improving complexity to achieve the excellent performance of polar codes.
Polar codes are highly notable not only because they can achieve as high a channel capacity as a discrete memoryless channel by using a successive cancellation decoding scheme, but also because their design and efficient encoding and decoding algorithms therefor are already suggested.
A discrete random channel is transformed into a set of channels with different reliabilities through channel polarization. If data is transmitted only through channels with a high reliability, the reliability of the entire system can be improved.
Channel polarization denotes a process of generating a set of N channels having different reliabilities, i.e., {WN(i):1≤i≤N}, by using a given discrete storage channel W N times independently.
Once N polar channels having different reliabilities are generated, a polar codeword is configured to transmit frozen bits with fixed values via channels with a low reliability and transmit data bits or unfrozen bits via channels with a high reliability.
Examples of polar code decoding include successive cancellation decoding and list successive cancellation decoding. List successive cancellation decoding is also referred to as list decoding and is known to have the most powerful correction capability among the existing error correction code (ECC) decoding techniques.
However, since polar code decoding is highly complicated and has a very high decoding latency, the applicability of polar code decoding may be relatively low. Particularly, since decoding complexity and decoding latency are more important to a memory device than to a wireless communication system, it may be difficult to use polar codes as they are.